package com.yisu.auction.ewf.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class Prize implements Serializable {


    /**
     * 夺宝状态
     */
    public enum StatusTypeEnum {
        SNATCH_TREASURE_ING(1, "夺宝中"),
        WAITING_ANNOUNCE(2, "等待揭晓"),
        HAS_ANNOUNCED(3, "已经揭晓");
        public int code;
        public String name;

        StatusTypeEnum(int code, String name) {
            this.code = code;
            this.name = name;
        }

        public static String getEnumNameByCode(int code) {
            for (StatusTypeEnum item : StatusTypeEnum.values()) {
                if (item.code == code)
                    return item.name;
            }
            return null;
        }
    }

    private Long id;

    private Long createUserId;

    private Date createDate;

    private Long updateUserId;

    private Date updateDate;

    private Boolean isValid;

    private Long goodsId;

    private Date startTime;

    private Date endTime;

    private BigDecimal price;

    private BigDecimal transactionPrice;

    private Long offerPriceId;

    private String name;

    private Long goodsTypeId;

    private Integer term;

    private String image;

    private Byte status;

    private Byte isTen;

    private Long memberId;

    private Date announceTime;

    private String address;

    private String linkPhone;

    private String recer;

    private Integer recStatus;

    private String expressCompany;

    private String expressNo;

    private String rechargeAccount;

    private Date addressTime;

    private Date sendTime;

    private Date confirmTime;

    private Date paymentTime;

    private Date showOrderTime;

    private Integer isRechargeableCard;

    private Integer autoRecharge;

    private Integer chargeType;

    private String rechargeTid;

    private Integer rechargeState;

    private Date noticeTime;

    private Integer billType;

    private Integer openPrizeType;

    private Integer orderStatus;

    private String goodsDetail;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(Long createUserId) {
        this.createUserId = createUserId;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Long getUpdateUserId() {
        return updateUserId;
    }

    public void setUpdateUserId(Long updateUserId) {
        this.updateUserId = updateUserId;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public Boolean getIsValid() {
        return isValid;
    }

    public void setIsValid(Boolean isValid) {
        this.isValid = isValid;
    }

    public Long getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Long goodsId) {
        this.goodsId = goodsId;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getTransactionPrice() {
        return transactionPrice;
    }

    public void setTransactionPrice(BigDecimal transactionPrice) {
        this.transactionPrice = transactionPrice;
    }

    public Long getOfferPriceId() {
        return offerPriceId;
    }

    public void setOfferPriceId(Long offerPriceId) {
        this.offerPriceId = offerPriceId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getGoodsTypeId() {
        return goodsTypeId;
    }

    public void setGoodsTypeId(Long goodsTypeId) {
        this.goodsTypeId = goodsTypeId;
    }

    public Integer getTerm() {
        return term;
    }

    public void setTerm(Integer term) {
        this.term = term;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public Byte getStatus() {
        return status;
    }

    public void setStatus(Byte status) {
        this.status = status;
    }

    public Byte getIsTen() {
        return isTen;
    }

    public void setIsTen(Byte isTen) {
        this.isTen = isTen;
    }

    public Long getMemberId() {
        return memberId;
    }

    public void setMemberId(Long memberId) {
        this.memberId = memberId;
    }

    public Date getAnnounceTime() {
        return announceTime;
    }

    public void setAnnounceTime(Date announceTime) {
        this.announceTime = announceTime;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getLinkPhone() {
        return linkPhone;
    }

    public void setLinkPhone(String linkPhone) {
        this.linkPhone = linkPhone;
    }

    public String getRecer() {
        return recer;
    }

    public void setRecer(String recer) {
        this.recer = recer;
    }

    public Integer getRecStatus() {
        return recStatus;
    }

    public void setRecStatus(Integer recStatus) {
        this.recStatus = recStatus;
    }

    public String getExpressCompany() {
        return expressCompany;
    }

    public void setExpressCompany(String expressCompany) {
        this.expressCompany = expressCompany;
    }

    public String getExpressNo() {
        return expressNo;
    }

    public void setExpressNo(String expressNo) {
        this.expressNo = expressNo;
    }

    public String getRechargeAccount() {
        return rechargeAccount;
    }

    public void setRechargeAccount(String rechargeAccount) {
        this.rechargeAccount = rechargeAccount;
    }

    public Date getAddressTime() {
        return addressTime;
    }

    public void setAddressTime(Date addressTime) {
        this.addressTime = addressTime;
    }

    public Date getSendTime() {
        return sendTime;
    }

    public void setSendTime(Date sendTime) {
        this.sendTime = sendTime;
    }

    public Date getConfirmTime() {
        return confirmTime;
    }

    public void setConfirmTime(Date confirmTime) {
        this.confirmTime = confirmTime;
    }

    public Integer getIsRechargeableCard() {
        return isRechargeableCard;
    }

    public void setIsRechargeableCard(Integer isRechargeableCard) {
        this.isRechargeableCard = isRechargeableCard;
    }

    public Integer getAutoRecharge() {
        return autoRecharge;
    }

    public void setAutoRecharge(Integer autoRecharge) {
        this.autoRecharge = autoRecharge;
    }

    public Integer getChargeType() {
        return chargeType;
    }

    public void setChargeType(Integer chargeType) {
        this.chargeType = chargeType;
    }

    public String getRechargeTid() {
        return rechargeTid;
    }

    public void setRechargeTid(String rechargeTid) {
        this.rechargeTid = rechargeTid;
    }

    public Integer getRechargeState() {
        return rechargeState;
    }

    public void setRechargeState(Integer rechargeState) {
        this.rechargeState = rechargeState;
    }

    public Date getNoticeTime() {
        return noticeTime;
    }

    public void setNoticeTime(Date noticeTime) {
        this.noticeTime = noticeTime;
    }

    public Integer getBillType() {
        return billType;
    }

    public void setBillType(Integer billType) {
        this.billType = billType;
    }

    public Integer getOpenPrizeType() {
        return openPrizeType;
    }

    public void setOpenPrizeType(Integer openPrizeType) {
        this.openPrizeType = openPrizeType;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getGoodsDetail() {
        return goodsDetail;
    }

    public void setGoodsDetail(String goodsDetail) {
        this.goodsDetail = goodsDetail;
    }

    public Date getPaymentTime() {
        return paymentTime;
    }

    public void setPaymentTime(Date paymentTime) {
        this.paymentTime = paymentTime;
    }

    public Date getShowOrderTime() {
        return showOrderTime;
    }

    public void setShowOrderTime(Date showOrderTime) {
        this.showOrderTime = showOrderTime;
    }

    public Prize(){}

    public Prize(PrizeArchive prizeArchive) {
        this.id = prizeArchive.getId();
        this.createUserId = prizeArchive.getCreateUserId();
        this.createDate = prizeArchive.getCreateDate();
        this.updateUserId = prizeArchive.getUpdateUserId();
        this.updateDate = prizeArchive.getUpdateDate();
        this.isValid = prizeArchive.getIsValid();
        this.goodsId = prizeArchive.getGoodsId();
        this.startTime = prizeArchive.getStartTime();
        this.endTime = prizeArchive.getEndTime();
        this.price = prizeArchive.getPrice();
        this.transactionPrice = prizeArchive.getTransactionPrice();
        this.offerPriceId = prizeArchive.getOfferPriceId();
        this.name = prizeArchive.getName();
        this.goodsTypeId = prizeArchive.getGoodsTypeId();
        this.term = prizeArchive.getTerm();
        this.image = prizeArchive.getImage();
        this.status = prizeArchive.getStatus();
        this.isTen = prizeArchive.getIsTen();
        this.memberId = prizeArchive.getMemberId();
        this.announceTime = prizeArchive.getAnnounceTime();
        this.address = prizeArchive.getAddress();
        this.linkPhone = prizeArchive.getLinkPhone();
        this.recer = prizeArchive.getRecer();
        this.recStatus = prizeArchive.getRecStatus();
        this.expressCompany = prizeArchive.getExpressCompany();
        this.expressNo = prizeArchive.getExpressNo();
        this.rechargeAccount = prizeArchive.getRechargeAccount();
        this.addressTime = prizeArchive.getAddressTime();
        this.sendTime = prizeArchive.getSendTime();
        this.confirmTime = prizeArchive.getConfirmTime();
        this.showOrderTime=prizeArchive.getShowOrderTime();
        this.paymentTime=prizeArchive.getPaymentTime();
        this.isRechargeableCard = prizeArchive.getIsRechargeableCard();
        this.autoRecharge = prizeArchive.getAutoRecharge();
        this.chargeType = prizeArchive.getChargeType();
        this.rechargeTid = prizeArchive.getRechargeTid();
        this.rechargeState = prizeArchive.getRechargeState();
        this.noticeTime = prizeArchive.getNoticeTime();
        this.billType = prizeArchive.getBillType();
        this.openPrizeType = prizeArchive.getOpenPrizeType();
        this.orderStatus = prizeArchive.getOrderStatus();
        this.goodsDetail = prizeArchive.getGoodsDetail();
    }
}